home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / newsgrp / group93a.txt / 000024_icon-group-sender _Sat Jan 16 16:32:36 1993.msg < prev    next >
Internet Message Format  |  1993-04-21  |  2KB

  1. Received: by cheltenham.cs.arizona.edu; Sat, 16 Jan 1993 20:44:22 MST
  2. Date: Sat, 16 Jan 93 16:32:36 PST
  3. From: alex@laguna.Metaphor.COM (Bob Alexander)
  4. Message-Id: <9301170032.AA05630@laguna.Metaphor.COM>
  5. To: icon-group@cs.arizona.edu
  6. Subject: Re: entab/detab
  7. Status: R
  8. Errors-To: icon-group-errors@cs.arizona.edu
  9.  
  10. I use entab and detab quite a bit -- often the text I want to process
  11. is entabbed, and often I want to entab my output.
  12.  
  13. Interestingly, those routines once *were* library routines (in a
  14. slightly different form), and made it into the language somewhere
  15. around version 6.  Certainly they *could* be library routines, but this
  16. sort of operations is way faster as a primitive than if it were written
  17. in Icon.  I personally don't feel that it clutters up the language.
  18.  
  19. It would be interesting to create a questionaire to determine which
  20. features are rarely used.  E.g. how often do you use string invocation,
  21. or PDCOs, or run-time error conversion to failure?
  22.  
  23. I think an interesting (significant) project would be to create a
  24. smaller but more extensible Icon.  The "real" Icon would just be a
  25. nucleus, and much of the functionality could be added using new
  26. yet-to-be-conceived extensibility features.  The extensibility
  27. cabilities would include
  28.  
  29.     (a) "easy" addition of new primitives written in C (whatever
  30.         that means -- maybe without relinking the interpreter, or
  31.         at least with changes limited to one module.  Maybe dynamic
  32.         linking -- that seems to be a trend and is implemented in
  33.         popular platforms now.)
  34.  
  35.     (b) addition of new facilities written in Icon without creating
  36.         name conflicts.
  37.  
  38.     (c) overloading of existing functions (like copy()) and
  39.         operators to handle new data types.
  40.  
  41. Has anyone else out there had a similar fantasy?  Then things like
  42. entab, X-stuff, and maybe even string scanning could be "extensions".
  43.  
  44. -- Bob Alexander
  45.  
  46. Metaphor Computer Systems     (415) 966-0751      alex@metaphor.com
  47. ====^=== Mountain View, CA  ...{uunet}!{decwrl,apple}!metaphor!alex
  48.